package org.jeecg.modules.quality.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.jeecg.modules.quality.entity.BussInspectionFormStorage;
import org.jeecg.modules.quality.entity.BussInspectionFormDetail;
import org.jeecg.modules.quality.entity.BussInspectionForm;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.quality.vo.BussInspectionFormDetailVo;
import org.jeecg.modules.quality.vo.BussInspectionFormPage;
import org.jeecg.modules.quality.vo.BussInspectionFormStorageVo;

import javax.servlet.http.HttpServletRequest;
import java.io.Serializable;
import java.util.Collection;
import java.util.List;

/**
 * @Description: 检验单
 * @Author: jeecg-boot
 * @Date:   2024-07-09
 * @Version: V1.0
 */
public interface IBussInspectionFormService extends IService<BussInspectionForm> {

	/**
	 * 添加一对多
	 *
	 * @param bussInspectionForm
	 * @param bussInspectionFormStorageList
	 * @param bussInspectionFormDetailList
	 */
	public void saveMain(BussInspectionForm bussInspectionForm, List<BussInspectionFormStorageVo> bussInspectionFormStorageList, List<BussInspectionFormDetailVo> bussInspectionFormDetailList, HttpServletRequest req,String storageDetailIds) ;
	
	/**
	 * 修改一对多
	 *
   * @param bussInspectionForm
   * @param bussInspectionFormStorageList
   * @param bussInspectionFormDetailList
	 */
	public void updateMain(BussInspectionForm bussInspectionForm,List<BussInspectionFormStorageVo> bussInspectionFormStorageList,List<BussInspectionFormDetailVo> bussInspectionFormDetailList);
	
	/**
	 * 删除一对多
	 *
	 * @param id
	 */
	public void delMain (String id);
	
	/**
	 * 批量删除一对多
	 *
	 * @param idList
	 */
	public void delBatchMain (Collection<? extends Serializable> idList);

	public IPage<BussInspectionFormPage> myPage(Page<BussInspectionForm> page, QueryWrapper<BussInspectionForm> queryWrapper);

	public void revokeBatch(Collection<? extends Serializable> idList);
}
